package com.itheima.fanshe2;

import java.lang.reflect.Constructor;

/*
获取类的 构造方法的方法
 */
public class Demo02 {

    public static void main(String[] args) throws NoSuchMethodException {
        Class<Student> clazz = Student.class;

        //构造方法对象数组
        //获取所有公有的构造方法
        Constructor<?>[] constructors = clazz.getConstructors();
        for (Constructor<?> constructor : constructors) {
            System.out.println(constructor);
        }

        System.out.println("=============");
        //获取所有的构造方法  包含私有
        Constructor<?>[] declaredConstructors = clazz.getDeclaredConstructors();
        for (Constructor<?> declaredConstructor : declaredConstructors) {
            System.out.println(declaredConstructor);
        }
        System.out.println("=============");
        Constructor<Student> constructor = clazz.getConstructor();
        System.out.println(constructor);
        Constructor<Student> constructor1 = clazz.getConstructor(String.class, int.class);
        System.out.println(constructor1);
      /*  Constructor<Student> constructor2 = clazz.getConstructor(String.class);
        System.out.println(constructor2);*/
        Constructor<Student> constructor2 = clazz.getDeclaredConstructor(String.class);
        System.out.println(constructor2);

    }


}
